「Table」データ領域とグループ化を使用し、マスタ詳細レポートを作成することができます。このチュートリアルでは、マスタ詳細レポートの作成方法を紹介します。
このトピックでは、以下のタスクを行います。
- Visual StudioプロジェクトにActiveReportを追加する
- レポートをデータソースに接続する
- レポートにデータセットを追加する
- レポートのレイアウトを作成する
- レポートを表示する
|
メモ:
- このチュートリアルでは、Reelsデータベース(Reels.mdb)のCustomerテーブルを使用しています。Reelsデータベース(..\ActiveReportsNET9\Data\Reels.mdb)へのアクセス権限が必要です。
- このチュートリアルではページレポートを使用していますが、RDLレポートを使用した場合も同様の手順で作成することが可能です。
|
チュートリアルを完了すると、次のレポートが作成されます。
設計時のレイアウト
実行時のレイアウト
Visual StudioプロジェクトにActiveReportを追加する
- Visual Studioで新規プロジェクトを開きます。
- [プロジェクト]メニューから[新しい項目の追加]を選択します。
- [新しい項目の追加]ダイアログで[ActiveReports 9.0J ページレポート(XML)]を選択し、ファイル名を「rptMasterDetail」に変更します。
- [追加]ボタンをクリックします。
詳細は、「プロジェクトにレポートを追加する 」を参照してください。
レポートをデータソースに接続する
- 「レポートエクスプローラ」では、データソースのノードを右クリックして、[データソースの追加]のオプションを選択するか、[追加]ボタンから[データソース]を選択します。
- [レポートデータソース]ダイアログでは、[全般]ページを選択し、名前を「ReportData」に変更します。
- このチュートリアルでは、Reelsデータベースに接続します。詳細は、「データソースとの接続 」を参照してください。
データセットを追加する
- 「レポートエクスプローラ」では、データソースのノードを右クリックして、[データセットの追加]のオプションを選択するか、[追加]ボタンから[データセット]を選択します。
- [データセット]ダイアログでは、[全般]ページへ移動し、[名前]フィールドに「CustomerOrders」を入力します。この名前はレポートエクスプローラで、データソースの子ノードとして表示されます。
-
[データセット]ダイアログの[クエリ]フィールドに以下のSQLクエリを入力します。
SQLクエリ |
コードのコピー
|
SELECT CustomerID, Title, LastName, Quantity, Price, [Quantity]*[Price] AS
Total FROM CustomerOrders WHERE CustomerID < 1010
|
- クエリボックスの横にある[データセットの検証]アイコンをクリックし、クエリを検証します。
- [OK]をクリックしてダイアログを閉じます。データセットとクエリフィールドは、レポートエクスプローラのノードとして表示されます。
レポートのレイアウトを作成する
レポートにグループ化のテーブルを追加する
- Visual Studioのツールボックスから、デザイナ面上に「Table」データ領域コントロールをドラッグし、「[プロパティ]ウィンドウ」からLocationプロパティを「0in,1in」に設定します。
- Table内をクリックし、テーブルの上端と左端に列と行のハンドルを表示します。
- レポート内のデータをグループ化するために、詳細行の左端の行ハンドルを右クリックし、[グループの挿入]を選択します。
- [Table- グループ]ダイアログでは、[式]に「
=Fields!CustomerID.Value」
を入力します。
これにより、各顧客の詳細をグループ化します。
-
[名前]を[Customer]に変更します。
|
メモ: [式]を設定するまで、[Table - グループ]の[名前]を変更することはできません。 |
- [OK]をクリックしてダイアログを閉じます。テーブルにグループヘッダとグループフッタが追加されます。
レポートの4番目の列を追加する
- 1番目の列を選択し、[プロパティ]ウィンドウから、Widthプロパティを「3.5in」に設定します。
- 2番目の列を選択し、[プロパティ]ウィンドウから、Widthプロパティを「0.92in」に設定します。
- 3番目の列を選択し、[プロパティ]ウィンドウから、Widthプロパティを「1.04in」に設定します。
|
ヒント: レポートの幅が変更されないように、デザイナ面にあるテーブルの列の幅を調整してください。
|
- 3番目の列の上端にある列ハンドルを右クリックし、[右に列を挿入]を選択します。挿入した4番目の列の幅を、3番目の列の幅と同じ「1.04in」に設定します。
データをテーブルに追加する
- グループヘッダ行の1番目の列のテキストボックス上をマウスオーバーし、フィールド選択の装飾を表示します。
- 装飾をクリックし、[データセット]にあるフィールドのリストから[LastName]を選択します。グループヘッダ行に式が自動的に追加され、ヘッダ行に静的なラベルが表示されます。
- [プロパティ]ウィンドウでは、同テキストボックスのFontSizeプロパティを「12pt」に設定します。
- テーブルヘッダ行の、1番目の列の静的なラベル[Last Name]を削除します。
- 各グループの先頭に静的なラベルを表示するために、グループヘッダ行の左端にある行ハンドルを右クリックし、[下に行を挿入]を選択します。
- 詳細行の1番目の列のフィールド選択の装飾を使用し、[Title]フィールドを追加します。
- グループヘッダから静的なラベルを切り取り、詳細行の上に挿入したヘッダ行に貼り付けます。
- 詳細行の2番目の列のフィールド選択の装飾を使用し、[Quantity]フィールドを追加します。詳細行に式が自動的に追加され、ヘッダ行に静的なラベルが表示されます。
- [プロパティ]ウィンドウから、[Quantity]フィールドのTextAlignプロパティを「Left」に設定します。
- グループヘッダから静的なラベルを切り取り、詳細行の上に挿入したヘッダ行に貼り付けます。
- 詳細行の3番目の列のフィールド選択の装飾を使用し、[Price]フィールドを追加します。
- 「[プロパティ]ウィンドウ」から、以下のプロパティを設定します。
プロパティ名 |
値 |
TextAlign |
Left |
Format |
C (通貨書式を使用します) |
- グループヘッダから静的なラベルを切り取り、詳細行の上に挿入したヘッダ行に貼り付けます。
- 詳細行の4番目の列のフィールド選択の装飾を使用し、[Total]フィールドを選択します。
- 「[プロパティ]ウィンドウ」から、以下のプロパティを設定します。
プロパティ名 |
値 |
TextAlign |
Left |
Format |
C (通貨書式を使用します) |
- グループヘッダから静的なラベルを切り取り、詳細行の上に挿入したヘッダ行に貼り付けます。
レポートの外観を向上する
- テーブルの左端にある行ハンドルを右クリックし、[テーブルのヘッダ]を選択して削除します。
- ヘッダ行の左端の行ハンドルをクリックし、ラベルを持つヘッダ行を選択します。
-
[プロパティ]ウィンドウから、以下のプロパティを設定します。
プロパティ名 |
値 |
RepeatOnNewPage |
True |
FontWeight |
Bold |
- 「レポートエクスプローラ」から、[Total]フィールドをグループフッタ行の4番目の列にドラッグし、グループ毎の小計を表示します。この式では自動的に[Sum]関数が使用されます。
- 「[プロパティ]ウィンドウ」から、以下のプロパティを設定します。
プロパティ名 |
値 |
Format |
C (通貨書式を使用します) |
FontWeight |
Bold |
- 「レポートエクスプローラ」から、[Total]フィールドをテーブルフッタ行の4番目の列にドラッグし、てテーブル毎の合計を表示します。
- 「[プロパティ]ウィンドウ」から、以下のプロパティを設定します。
プロパティ名 |
値 |
Format |
C (通貨書式を使用します) |
FontWeight |
Bold |
- 上の行に設定された静的なラベル[Total]を削除します。
- ページレポートの場合は、[レポートエクスプローラ]よりTableデータ領域を選択し、FixedSizeプロパティを「6.5in, 7in」に設定します。
レポートを表示する
- 設計時にレポートを表示するには、プレビュータブをクリックします。
または
関連トピック